// 该文件用于提供一些通用的一些函数

/**
 * 基于一份树形数据，得到一个 key: value 的映射对象
 * @param tree [
 *  {
 *    name: 'a',
 *    label: 'A',
 *    children: [
 *      {name: 'a_1', label: 'A_1'}
 *    ]
 *  },
 *  {name: 'b', label: 'B'}
 * ]
 * @param map 结果对象
 * @returns map {
 *  'a': 'A',
 *  'b': 'B',
 *  'a_1': 'A_1'
 * }
 */
export function getMapByTree(tree, map = {}) {
  tree.forEach((item) => {
    map[item.name] = item.label;
    if (item.children) {
      getMapByTree(item.children, map);
    }
  });

  return map;
}
